package objects;

import java.util.Calendar;

public abstract class AlarmState {
	protected static Calendar timeSet = null;
	protected static final AlarmNotSet alarmNotSet = new AlarmNotSet();
	protected static final AlarmSet alarmSet = new AlarmSet();
	protected static final AlarmMakingNoise alarmMakingNoise = new AlarmMakingNoise();
	protected static final AlarmSnoozing alarmSnoozing = new AlarmSnoozing();
	protected static Boolean buzz = false;

	/**
	 * Changes buzz state to its opossite value.
	 */
	public void setBuzz() {
		AlarmState.buzz = !AlarmState.buzz;
	}

	public AlarmState alarmOn(Calendar time) {
		return this;
	}

	public AlarmState alarmOff() {
		return this;
	}

	public AlarmState snooze(int timeLapse) {
		return this;
	}

	public AlarmState stop() {
		return this;
	}

	public AlarmState init() {
		return this;
	}

	public AlarmState exit() {
		return this;
	}

}
